* regressions_formal_ebite_industry.do	JEP	04/05/15
* Does regressions that are in the term paper, for formal workers: RIF4
* Monthly wages
* Exclude some industries
* Do regressions by city - industry
* Cluster by city

*************************** Change log ********************************** 

/*
	
*/	

clear 
version 13.1

* Project info
cap project, doinfo
if _rc==198 {
	if c(os)=="Unix" loc master "/home/jperez/AA_Minimum_Wage" 
 else if c(username)=="J16339" loc master "B:\Col_Minimum_Wage"
 else if c(username)=="A15858" loc master "B:\Col_Minimum_Wage"
	else loc master "C:/Users/jorpp/Dropbox (Brown)/Col_Minimum_Wage"
 loc pr = 0
}
else {
	local master "`r(pdir)'"
	local doname "`r(dofile)'"  
 loc pr = 1
	* Project calls
	project, uses("`master'/Data/Source/ocupados_mw.dta")
	* Call programs
	project, relies_on("`master'/Code/Est/sample_choice.do")
	project, relies_on("`master'/Code/Est/build_mw_measures.do")
	project, relies_on("`master'/Code/Est/build_treatment.do")
	project, relies_on("`master'/Code/Est/export_rif.do")
	project, relies_on("`master'/Code/Est/confirmedrun.do")
	project, relies_on("`master'/Code/Est/graph_rif.do")
}
*/


* Call necessary programs. I do not call using project to carry the programs around. I do not put these in the ado/personal folder because they are specific to the project. They are not ado files.
do "`master'/Code/Est/sample_choice.do"
do "`master'/Code/Est/build_mw_measures.do"
do "`master'/Code/Est/build_treatment.do"
do "`master'/Code/Est/export_rif.do"
do "`master'/Code/Est/confirmedrun.do"
do "`master'/Code/Est/graph_rif.do"


use "`master'/Data/Source/ocupados_mw.dta", clear

* Choose quantiles
glo qtiles "5 10 15 20 25 30 35 40 45 50 55 60 65 70 75 80 85 90"
* glo qtiles "90"
* Number of bootstraps
glo boot=200

* RIF 4 - Tables numbered 4 in term paper

* Choose sample
mysample rif4sample , hmin(30) hmax(50) sex(0) edadm(65) wage(salario) formal exind(13,29,42)
tab rif4sample
tab tipo_trabajador if rif4sample
tab year if rif4sample
tab horas_semana if rif4sample 
tab sex if rif4sample
tab afiliado_salud if rif4sample
* Build mw measures
mw_measures rif4sample , stub(rif4) 
* Build treatment
mytreatment, posts("tq(1999q1)") mw(bite_e_rif4_ind) wage(salario_mensual_real)

* RIF regressions

* Create estimation results folder if it doesn't already exist
cap mkdir "`master'/Ster"
cap mkdir "`master'/Ster/rif4_new_ebite_indcc"

* For these I'm going to assume the clusters are the city - industry pairs. This assumes that there is not correlation within city across industries, only within those pairs. Could also run with the standard clustering by city, but that would mean that I'm not really increasing the sample size by running within industry.

* The number of clusters is  enough that I don't need the full CGM framework, can run just with cluster
egen city_ind=group(ccode cactividad_empresa)

foreach x in $qtiles {
	di " Percentile `x'"
	loc fw: word 1 of $qtiles
	loc count: word count $qtiles
	di `count'
	loc lw: word `count' of $qtiles
	if `x'==`lw' & `pr'!=0 loc reg="register"
	else loc reg ""
	if `x'==`fw' loc r="replace"
	else loc r="append"
	
	* Panel A. Employment
	* confirmedrun, `reg' controls() name(`master'/Ster/rif4_new_ebite_indcc/reg_emp_tq(1999q1)_ebite_salario_mensual_real_50_edom_indcc) rif(rif4A) p(`x') r(`r') sample(rif4sample) fe(i.ccode#i.cactividad_empresa i.time) cluster(ccode) rerun
	* cgmrif2 lw treat i.ccode i.time emp if rif4sample , hyp(0) boot($boot) cluster(ccode) x(treat) i(ccode) t(time) q(`x') rif(rif4A`x')
	* exportrif, name(`master'/Ster/rif4_new/reg_emp_tq(1999q1)_ebite_salario_mensual_real_50_edom) p(`x') r(`r')
	* Panel B. Employment and Bartik Price Variable
	confirmedrun, `reg' controls(bartikp1_ex) name(`master'/Ster/rif4_new_ebite_indcc/reg_emp_bp_tq(1999q1)_ebite_salario_mensual_real_50_edom_indcc) rif(rif4B) p(`x') r(`r') sample(rif4sample) fe(i.ccode#i.cactividad_empresa i.time) cluster(ccode) rerun
	* Panel C. Employment and Bartik Quantity Variable
	* confirmedrun, `reg' controls(bartikq_ex) name(`master'/Ster/rif4_new_ebite_indcc/reg_emp_bq_tq(1999q1)_ebite_salario_mensual_real_50_edom_indcc) rif(rif4C) p(`x') r(`r') sample(rif4sample) fe(i.ccode#i.cactividad_empresa i.time) cluster(ccode)   rerun
	* Panel D. Employment and City Trends
	* confirmedrun, `reg' controls(i.ccode#c.trend) name(`master'/Ster/rif4_new_ebite_indcc/reg_sst_emp_tq(1999q1)_ebite_salario_mensual_real_50_edom_indcc) rif(rif4D) p(`x') r(`r') sample(rif4sample) fe(i.ccode#i.cactividad_empresa i.time) cluster(ccode)  rerun
	* Panel E. Employment, Bartik Price Variable and City Trends
	* confirmedrun, `reg' controls(i.ccode#c.trend bartikp1_ex) name(`master'/Ster/rif4_new_ebite_indcc/reg_sst_emp_bp_tq(1999q1)_ebite_salario_mensual_real_50_edom_indcc) rif(rif4E) p(`x') r(`r') sample(rif4sample) fe(i.ccode#i.cactividad_empresa i.time) cluster(ccode)  rerun 
	* Panel F. Employment, Bartik Quantity Variable and City Trends
	* confirmedrun, `reg' controls(i.ccode#c.trend bartikq_ex) name(`master'/Ster/rif4_new_ebite_indcc/reg_sst_emp_bq_tq(1999q1)_ebite_salario_mensual_real_50_edom_indcc) rif(rif4F) p(`x') r(`r') sample(rif4sample) fe(i.ccode#i.cactividad_empresa i.time) cluster(ccode)   rerun
	* Panel G. Employment, Bartik Price Variable - Industry fe, city fe and interactions
	* confirmedrun, `reg' controls(bartikp1_ex) name(`master'/Ster/rif4_new_ebite_indcc/reg_emp_bp_ixc_tq(1999q1)_ebite_salario_mensual_real_50_edom_indcc) rif(rif4G) p(`x') r(`r') sample(rif4sample) fe(i.ccode##i.cactividad_empresa i.time) cluster(ccode)  rerun
	* Panel H. Employment, Bartik Quantity Variable and City - Industry fe, city fe and interactions
	* confirmedrun, `reg' controls(bartikq_ex) name(`master'/Ster/rif4_new_ebite_indcc/reg_emp_bq_ixc_tq(1999q1)_ebite_salario_mensual_real_50_edom_indcc) rif(rif4H) p(`x') r(`r') sample(rif4sample) fe(i.ccode##i.cactividad_empresa i.time) cluster(ccode)  rerun
	* Panel I - Employment, Bartik Price Variable - Industry fe, city fe and interactions - City Industry trends
	* confirmedrun, `reg' controls(bartikp1_ex) name(`master'/Ster/rif4_new_ebite_indcc/reg_ct_emp_bp_ixc_tq(1999q1)_ebite_salario_mensual_real_50_edom_indcc) rif(rif4I) p(`x') r(`r') sample(rif4sample) fe(i.ccode##i.cactividad_empresa i.ccode#i.cactividad_empresa#c.trend i.time) cluster(ccode) rerun	 
	* Panel J. Employment, Bartik Quantity Variable and City - Industry fe, city fe and interactions
	* confirmedrun, `reg' controls(bartikq_ex) name(`master'/Ster/rif4_new_ebite_indcc/reg_ct_emp_bq_ixc_tq(1999q1)_ebite_salario_mensual_real_50_edom_indcc) rif(rif4J) p(`x') r(`r') sample(rif4sample) fe(i.ccode##i.cactividad_empresa i.ccode#i.cactividad_empresa#c.trend i.time) cluster(ccode)  rerun
	
}

* Graph results and export

clear

cap program drop mex
program define mex
	cap mkdir "`2'/Doc/ster_figures/rif4_new_ebite_indcc"
	cap mkdir "`2'/Doc/ster_figures/rif4_new_ebite_indcc/1999q1"
	graph export "`2'/Doc/ster_figures/rif4_new_ebite_indcc/1999q1/`1'.pdf", replace
	*! epstopdf "`2'/Doc/ster_figures/rif4_new_ebite_indcc/1999q1/`1'.eps"
	*erase "`2'/Doc/ster_figures/rif4_new_ebite_indcc/1999q1/`1'.eps"
	* project, creates("`master'/Doc/descriptive_figures/density/`1'.pdf")
end	

foreach spec in reg_emp_bp {
	graph drop _all
	graphrif, master("`master'") ster(Ster) folder(rif4_new_ebite_indcc) qtiles($qtiles) spec(`spec') time(tq(1999q1)) rareaopts(bcolor(gs13)) twowayopts(title("Formal sector - ebite - By city industry" "`spec' - 1999q1" ) xtitle(Percentile) ytitle(Coef) yscale(range(-0.0075 0.0075)) ylabel(-0.0075(0.0025)0.0075) yline(0) caption(Bootstrapped s.e. clustered by city) ) bite(ebite)  
	mex `spec' `master'
}
